const package = require('../package.json')
const commander = require('commander')
const { program } = require('commander')

const create = require('./commander/create')

// 注册create命令
const createCmd = new commander.Command('create')
// web端
createCmd
  .command('web')
  .description('创建web项目')
  .action(async cmd => {
    if (cmd) {
      create('web')
    }
  })
// h5端
createCmd
  .command('h5')
  .description('创建h5项目')
  .action(async cmd => {
    if (cmd) {
      create('h5')
    }
  })
program.addCommand(createCmd)

// 自定义help信息
program.helpInformation = () => {
  return `
    命令                                    |  含义
    ——————————————————————————————————————————————————————————
    create web                              | 创建 web 项目 
    ——————————————————————————————————————————————————————————
    create h5                               | 创建 h5 项目
    ——————————————————————————————————————————————————————————
    base -h                                 | 输出帮助信息
    ——————————————————————————————————————————————————————————
  `
}
// 捕获所有未知命令
program.on('command:*', function (obj) {
  console.error('未知命令', obj[0])
  console.log(program.helpInformation())
})
program.parse(process.argv)
